package www.my.myselector.main;

import android.content.Context;
import androidx.core.content.ContextCompat;
import android.widget.ImageView;

import com.facebook.drawee.drawable.ScalingUtils;
import com.facebook.drawee.generic.GenericDraweeHierarchy;
import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder;
import com.facebook.drawee.view.SimpleDraweeView;

import www.my.myselector.R;
import www.my.myselector.selector.ImageLoader;

/**
 * Created by 张英杰 on 2016/8/31.
 */
public class FrescoLoader implements ImageLoader {
    @Override
    public void displayImage(Context context, String path, ImageView imageView) {
        GenericDraweeHierarchy hierarchy=new GenericDraweeHierarchyBuilder(context.getResources())
                //设置淡入淡出动画持续时间
//                .setFadeDuration(1000)
                //设置单张背景图
                //.setBackground(ContextCompat.getDrawable(this, R.mipmap.bg_zero))
                //设置多张背景图
                //.setBackgrounds(bgs)
                //设置单张叠加图
                //.setOverlay(ContextCompat.getDrawable(this,R.mipmap.overlay_one))
                //设置多张叠加图
                //.setOverlays(overlays)
                //设置占位图及它的缩放类型
                .setPlaceholderImage(ContextCompat.getDrawable(context, R.mipmap.icon_placeholder), ScalingUtils.ScaleType.FIT_CENTER)
                //设置正在加载图及其缩放类型
                .setProgressBarImage(ContextCompat.getDrawable(context, R.mipmap.icon_progress_bar), ScalingUtils.ScaleType.FIT_CENTER)
                //设置失败图及其缩放类型
                .setFailureImage(ContextCompat.getDrawable(context, R.mipmap.icon_failure), ScalingUtils.ScaleType.FIT_CENTER)
                //设置重试图及其缩放类型
                .setRetryImage(ContextCompat.getDrawable(context, R.mipmap.icon_retry), ScalingUtils.ScaleType.FIT_CENTER)
                //构建
                .build();
        SimpleDraweeView imageView1 = (SimpleDraweeView) imageView;
        imageView1.setHierarchy(hierarchy);
        imageView1.setImageURI("file://"+path);
    }
}
